# install.packages("remotes")
# remotes::install_github("kwb-r/wasserportal", upgrade = "never", force = TRUE)
library(wasserportal)
overview_options <- wasserportal::get_overview_options()
str(overview_options)
#> List of 2
#> $ surface_water:List of 7
#> ..$ water_level : chr "ws"
#> ..$ flow : chr "df"
#> ..$ level : chr "wt"
#> ..$ conductivity : chr "lf"
#> ..$ ph : chr "ph"
#> ..$ oxygen_concentration: chr "og"
#> ..$ oxygen_saturation : chr "os"
#> $ groundwater :List of 2
#> ..$ level : chr "gws"
#> ..$ quality: chr "gwq"
system.time(stations <- wasserportal::get_stations())
#> Importing 9 station overviews from Wasserportal Berlin ... ok. (9.43s)
#> user system elapsed
#> 0.052 0.010 9.733
str(stations)
#> List of 3
#> $ overview_list:List of 9
#> ..$ surface_water.water_level : tibble [71 × 9] (S3: tbl_df/tbl/data.frame)
#> .. ..$ Messstellennummer: int [1:71] 5865900 5827103 5865300 5819900 5864801 5861101 5800107 5800317 5867003 5867401 ...
#> .. ..$ Messstellenname : chr [1:71] "Allee der Kosmonauten" "Allendestraße" "Am Bahndamm" "Am Freibad" ...
#> .. ..$ Gewaesser : chr [1:71] "M.-H.-Grenzgr." "Müggelspree" "Wuhle" "Tegeler Fließ" ...
#> .. ..$ Betreiber : chr [1:71] "SenUVK" "SenUVK" "SenUVK" "SenUVK" ...
#> .. ..$ Datum : chr [1:71] "25.10.2021 13:45" "25.10.2021 13:45" "24.10.2021 23:30" "25.10.2021 13:45" ...
#> .. ..$ Wasserstand : int [1:71] 7 49 92 90 4 38 61 86 79 43 ...
#> .. ..$ Einheit : chr [1:71] "cm" "cm" "cm" "cm" ...
#> .. ..$ Ganglinien : logi [1:71] NA NA NA NA NA NA ...
#> .. ..$ Klassifikation : chr [1:71] "niedrig" "niedrig" "niedrig" "normal" ...
#> ..$ surface_water.flow : tibble [16 × 9] (S3: tbl_df/tbl/data.frame)
#> .. ..$ Messstellennummer: int [1:16] 5827103 5865300 5864801 5867401 5867900 5827101 5870100 5826701 5862811 5827700 ...
#> .. ..$ Messstellenname : chr [1:16] "Allendestraße" "Am Bahndamm" "Am Kienberg" "Bürgerpark" ...
#> .. ..$ Gewaesser : chr [1:16] "Müggelspree" "Wuhle" "Hellersdorfer Graben" "Panke" ...
#> .. ..$ Betreiber : chr [1:16] "SenUVK" "SenUVK" "SenUVK" "SenUVK" ...
#> .. ..$ Datum : chr [1:16] "25.10.2021 13:45" "24.10.2021 23:30" "25.10.2021 12:00" "25.10.2021 13:45" ...
#> .. ..$ Durchfluss : num [1:16] 3.9 0.132 0.005 0.616 0.657 1.44 6.99 6.5 4.7 12.2 ...
#> .. ..$ Einheit : chr [1:16] "m³/s" "m³/s" "m³/s" "m³/s" ...
#> .. ..$ Ganglinie : logi [1:16] NA NA NA NA NA NA ...
#> .. ..$ Klassifikation : chr [1:16] "niedrig" "niedrig" "keine" "niedrig" ...
#> ..$ surface_water.level : tibble [61 × 9] (S3: tbl_df/tbl/data.frame)
#> .. ..$ Messstellennummer: chr [1:61] "601" "151" "153" "509" ...
#> .. ..$ Messstellenname : chr [1:61] "MPS Berlin-Spandauer-Schifffahrtskanal" "MPS Caprivibrücke" "MPS Charlottenburg" "MPS Landwehrkanal" ...
#> .. ..$ Gewaesser : chr [1:61] "Berlin-Spandauer-Schifffahrtskanal" "Spree" "Spree" "Landwehrkanal" ...
#> .. ..$ Betreiber : chr [1:61] "Land Berlin" "Land Berlin" "Land Berlin" "Land Berlin" ...
#> .. ..$ Datum : chr [1:61] "25.10.2021 13:00" "25.10.2021 13:00" "25.10.2021 13:00" "25.10.2021 13:00" ...
#> .. ..$ Wassertemperatur : chr [1:61] "10.56" "10.35" "10.55" "10.11" ...
#> .. ..$ Einheit : chr [1:61] "°C" "°C" "°C" "°C" ...
#> .. ..$ Ganglinie : logi [1:61] NA NA NA NA NA NA ...
#> .. ..$ Klassifikation : chr [1:61] ">10 - 15°C" ">10 - 15°C" ">10 - 15°C" ">10 - 15°C" ...
#> ..$ surface_water.conductivity : tibble [16 × 9] (S3: tbl_df/tbl/data.frame)
#> .. ..$ Messstellennummer: chr [1:16] "601" "151" "153" "509" ...
#> .. ..$ Messstellenname : chr [1:16] "MPS Berlin-Spandauer-Schifffahrtskanal" "MPS Caprivibrücke" "MPS Charlottenburg" "MPS Landwehrkanal" ...
#> .. ..$ Gewaesser : chr [1:16] "Berlin-Spandauer-Schifffahrtskanal" "Spree" "Spree" "Landwehrkanal" ...
#> .. ..$ Betreiber : chr [1:16] "Land Berlin" "Land Berlin" "Land Berlin" "Land Berlin" ...
#> .. ..$ Datum : chr [1:16] "25.10.2021 13:00" "25.10.2021 13:00" "25.10.2021 13:00" "25.10.2021 13:00" ...
#> .. ..$ Leitfaehigkeit : chr [1:16] "850" "827" "826" "836" ...
#> .. ..$ Einheit : chr [1:16] "µS/cm" "µS/cm" "µS/cm" "µS/cm" ...
#> .. ..$ Ganglinie : logi [1:16] NA NA NA NA NA NA ...
#> .. ..$ Klassifikation : chr [1:16] ">800 - 1000" ">800 - 1000" ">800 - 1000" ">800 - 1000" ...
#> ..$ surface_water.ph : tibble [16 × 8] (S3: tbl_df/tbl/data.frame)
#> .. ..$ Messstellennummer: chr [1:16] "601" "151" "153" "509" ...
#> .. ..$ Messstellenname : chr [1:16] "MPS Berlin-Spandauer-Schifffahrtskanal" "MPS Caprivibrücke" "MPS Charlottenburg" "MPS Landwehrkanal" ...
#> .. ..$ Gewaesser : chr [1:16] "Berlin-Spandauer-Schifffahrtskanal" "Spree" "Spree" "Landwehrkanal" ...
#> .. ..$ Betreiber : chr [1:16] "Land Berlin" "Land Berlin" "Land Berlin" "Land Berlin" ...
#> .. ..$ Datum : chr [1:16] "25.10.2021 13:00" "25.10.2021 13:00" "25.10.2021 13:00" "25.10.2021 13:00" ...
#> .. ..$ pHWert : chr [1:16] "7.73" "7.54" "7.59" "7.42" ...
#> .. ..$ Ganglinie : logi [1:16] NA NA NA NA NA NA ...
#> .. ..$ Klassifikation : chr [1:16] ">7.5 - 8.0" ">7.5 - 8.0" ">7.5 - 8.0" ">7.0 - 7.5" ...
#> ..$ surface_water.oxygen_concentration: tibble [16 × 9] (S3: tbl_df/tbl/data.frame)
#> .. ..$ Messstellennummer: chr [1:16] "601" "151" "153" "509" ...
#> .. ..$ Messstellenname : chr [1:16] "MPS Berlin-Spandauer-Schifffahrtskanal" "MPS Caprivibrücke" "MPS Charlottenburg" "MPS Landwehrkanal" ...
#> .. ..$ Gewaesser : chr [1:16] "Berlin-Spandauer-Schifffahrtskanal" "Spree" "Spree" "Landwehrkanal" ...
#> .. ..$ Betreiber : chr [1:16] "Land Berlin" "Land Berlin" "Land Berlin" "Land Berlin" ...
#> .. ..$ Datum : chr [1:16] "25.10.2021 13:00" "25.10.2021 13:00" "25.10.2021 13:00" "25.10.2021 13:00" ...
#> .. ..$ Sauerstoffgehalt : chr [1:16] "9.17" "8.44" "9.12" "6.75" ...
#> .. ..$ Einheit : chr [1:16] "mg/l" "mg/l" "mg/l" "mg/l" ...
#> .. ..$ Ganglinie : logi [1:16] NA NA NA NA NA NA ...
#> .. ..$ Klassifikation : chr [1:16] ">5 - 10" ">5 - 10" ">5 - 10" ">5 - 10" ...
#> ..$ surface_water.oxygen_saturation : tibble [16 × 9] (S3: tbl_df/tbl/data.frame)
#> .. ..$ Messstellennummer: chr [1:16] "601" "151" "153" "509" ...
#> .. ..$ Messstellenname : chr [1:16] "MPS Berlin-Spandauer-Schifffahrtskanal" "MPS Caprivibrücke" "MPS Charlottenburg" "MPS Landwehrkanal" ...
#> .. ..$ Gewaesser : chr [1:16] "Berlin-Spandauer-Schifffahrtskanal" "Spree" "Spree" "Landwehrkanal" ...
#> .. ..$ Betreiber : chr [1:16] "Land Berlin" "Land Berlin" "Land Berlin" "Land Berlin" ...
#> .. ..$ Datum : chr [1:16] "24.10.2021 23:00" "24.10.2021 23:00" "24.10.2021 23:00" "24.10.2021 23:00" ...
#> .. ..$ Parameterwert : chr [1:16] "80.31" "69.41" "78.42" "53.72" ...
#> .. ..$ Einheit : chr [1:16] "%" "%" "%" "%" ...
#> .. ..$ Ganglinie : logi [1:16] NA NA NA NA NA NA ...
#> .. ..$ Klassifikation : chr [1:16] ">75 - 100" ">50 - 75" ">75 - 100" ">50 - 75" ...
#> ..$ groundwater.level : tibble [872 × 10] (S3: tbl_df/tbl/data.frame)
#> .. ..$ Messstellennummer : int [1:872] 1 2 3 4 9 21 24 25 26 30 ...
#> .. ..$ Bezirk : chr [1:872] "Reinickendorf" "Reinickendorf" "Reinickendorf" "Reinickendorf" ...
#> .. ..$ Auspraegung : chr [1:872] "GW-Stand" "GW-Stand" "GW-Stand + GW-Güte" "GW-Stand" ...
#> .. ..$ Grundwasserleiter : chr [1:872] "Hauptgrundwasserleiter (GWL 1.3 + 2)" "Hauptgrundwasserleiter (GWL 1.3 + 2)" "Hauptgrundwasserleiter (GWL 1.3 + 2)" "Hauptgrundwasserleiter (GWL 1.3 + 2)" ...
#> .. ..$ Grundwasserspannung : chr [1:872] "gespannt" "ungespannt" "gespannt" "ungespannt" ...
#> .. ..$ Datum : chr [1:872] "07.10.2021" "07.10.2021" "07.10.2021" "07.10.2021" ...
#> .. ..$ Grundwasserstand_m_ue_NHN: num [1:872] 33.7 35.3 33.7 32.5 36.7 ...
#> .. ..$ Flur_abstand_m_u_GOK : chr [1:872] "keine Angabe" "2.39" "keine Angabe" "7.41" ...
#> .. ..$ Ganglinie : logi [1:872] NA NA NA NA NA NA ...
#> .. ..$ Klassifikation : chr [1:872] "extrem niedrig" "normal" "normal" "sehr niedrig" ...
#> ..$ groundwater.quality : tibble [203 × 9] (S3: tbl_df/tbl/data.frame)
#> .. ..$ Messstellennummer: int [1:203] 3 145 149 344 358 580 604 645 762 775 ...
#> .. ..$ Bezirk : chr [1:203] "Reinickendorf" "Reinickendorf" "Mitte" "Spandau" ...
#> .. ..$ Auspraegung : chr [1:203] "GW-Stand + GW-Güte" "GW-Stand + GW-Güte" "GW-Stand + GW-Güte" "GW-Stand + GW-Güte" ...
#> .. ..$ Grundwasserleiter: chr [1:203] "Hauptgrundwasserleiter (GWL 1.3 + 2)" "Hauptgrundwasserleiter (GWL 1.3 + 2)" "Hauptgrundwasserleiter (GWL 1.3 + 2)" "Hauptgrundwasserleiter (GWL 1.3 + 2)" ...
#> .. ..$ Datum : chr [1:203] "10.11.2020" "06.10.2020" "27.10.2020" "15.10.2020" ...
#> .. ..$ Parameterwert : num [1:203] 12.2 12.1 12.5 13.4 12.7 13.2 15.8 12 13 11.7 ...
#> .. ..$ Einheit : chr [1:203] "grd C" "grd C" "grd C" "grd C" ...
#> .. ..$ Ganglinie : logi [1:203] NA NA NA NA NA NA ...
#> .. ..$ Klassifikation : chr [1:203] "keine" "keine" "keine" "keine" ...
#> $ overview_df :Classes 'data.table' and 'data.frame': 1287 obs. of 26 variables:
#> ..$ key : chr [1:1287] "surface_water.water_level" "surface_water.water_level" "surface_water.water_level" "surface_water.water_level" ...
#> ..$ Messstellennummer : chr [1:1287] "5865900" "5827103" "5865300" "5819900" ...
#> ..$ Messstellenname : chr [1:1287] "Allee der Kosmonauten" "Allendestraße" "Am Bahndamm" "Am Freibad" ...
#> ..$ Gewaesser : chr [1:1287] "M.-H.-Grenzgr." "Müggelspree" "Wuhle" "Tegeler Fließ" ...
#> ..$ Betreiber : chr [1:1287] "SenUVK" "SenUVK" "SenUVK" "SenUVK" ...
#> ..$ Datum : chr [1:1287] "25.10.2021 13:45" "25.10.2021 13:45" "24.10.2021 23:30" "25.10.2021 13:45" ...
#> ..$ Wasserstand : int [1:1287] 7 49 92 90 4 38 61 86 79 43 ...
#> ..$ Einheit : chr [1:1287] "cm" "cm" "cm" "cm" ...
#> ..$ Ganglinien : logi [1:1287] NA NA NA NA NA NA ...
#> ..$ Klassifikation : chr [1:1287] "niedrig" "niedrig" "niedrig" "normal" ...
#> ..$ Durchfluss : num [1:1287] NA NA NA NA NA NA NA NA NA NA ...
#> ..$ Ganglinie : logi [1:1287] NA NA NA NA NA NA ...
#> ..$ Wassertemperatur : chr [1:1287] NA NA NA NA ...
#> ..$ Leitfaehigkeit : chr [1:1287] NA NA NA NA ...
#> ..$ pHWert : chr [1:1287] NA NA NA NA ...
#> ..$ Sauerstoffgehalt : chr [1:1287] NA NA NA NA ...
#> ..$ Parameterwert : chr [1:1287] NA NA NA NA ...
#> ..$ Bezirk : chr [1:1287] NA NA NA NA ...
#> ..$ Auspraegung : chr [1:1287] NA NA NA NA ...
#> ..$ Grundwasserleiter : chr [1:1287] NA NA NA NA ...
#> ..$ Grundwasserspannung : chr [1:1287] NA NA NA NA ...
#> ..$ Grundwasserstand_m_ue_NHN: num [1:1287] NA NA NA NA NA NA NA NA NA NA ...
#> ..$ Flur_abstand_m_u_GOK : chr [1:1287] NA NA NA NA ...
#> ..$ water_body : chr [1:1287] "surface_water" "surface_water" "surface_water" "surface_water" ...
#> ..$ variable : chr [1:1287] "water_level" "water_level" "water_level" "water_level" ...
#> ..$ station_type : chr [1:1287] "ws" "ws" "ws" "ws" ...
#> ..- attr(*, ".internal.selfref")=<externalptr>
#> $ crosstable : tibble [999 × 11] (S3: tbl_df/tbl/data.frame)
#> ..$ Messstellennummer: chr [1:999] "5865900" "5827103" "5865300" "5819900" ...
#> ..$ Messstellenname : chr [1:999] "Allee der Kosmonauten" "Allendestraße" "Am Bahndamm" "Am Freibad" ...
#> ..$ ws : chr [1:999] "x" "x" "x" "x" ...
#> ..$ df : chr [1:999] NA "x" "x" NA ...
#> ..$ wt : chr [1:999] NA NA "x" NA ...
#> ..$ lf : chr [1:999] NA NA NA NA ...
#> ..$ ph : chr [1:999] NA NA NA NA ...
#> ..$ og : chr [1:999] NA NA NA NA ...
#> ..$ os : chr [1:999] NA NA NA NA ...
#> ..$ gws : chr [1:999] NA NA NA NA ...
#> ..$ gwq : chr [1:999] NA NA NA NA ...
jsonlite::write_json(stations$crosstable,
path = "stations_crosstable.json",
pretty = TRUE)
DT::datatable(stations$crosstable, filter = "top", caption = "Data availabilty
per monitoring station")The crosstable data for checking data availabilty of the monitoring stations is also available in JSON format here: https://kwb-r.github.io/wasserportal/stations_crosstable.json
Overview data of GW level stations can be requested as shown below:
DT::datatable(stations$overview_list$groundwater.level, filter = "top")Master data of GW level stations can be requested as shown below:
stations_gwl_master <- wasserportal::get_wasserportal_masters_data(
station_ids = stations$overview_list$groundwater.level$Messstellennummer
)
#> Importing 872 station metadata from Wasserportal Berlin ... ok. (8.91s)
jsonlite::write_json(stations_gwl_master,
path = "stations_gwl_master.json",
pretty = TRUE)
DT::datatable(stations_gwl_master, filter = "top")The master data of GW level stations is also available in JSON format here: https://kwb-r.github.io/wasserportal/stations_gwl_master.json
GW level trend classification (provided by SenWeb) is visualized below.
gwl <- stations$overview_list$groundwater.level %>%
dplyr::mutate(Datum = as.Date(Datum, format = "%d.%m.%Y"))
text_low_levels <- c("extrem niedrig", "sehr niedrig", "niedrig")
text_high_levels <- c("hoch", "sehr hoch", "extrem hoch")
levels_ordered <- c(text_low_levels, "normal", text_high_levels, "keine")
gwl$Klassifikation <- forcats::fct_relevel(gwl$Klassifikation, levels_ordered)
gwl_classified_only <- gwl %>% dplyr::filter(Klassifikation != "keine")
percental_share_low_levels <- 100*sum(gwl_classified_only$Klassifikation %in% text_low_levels)/nrow(gwl_classified_only)
percental_share_high_levels <- 100*sum(gwl_classified_only$Klassifikation %in% text_high_levels)/nrow(gwl_classified_only)
title_text <- sprintf("GW level classification (n = %d out of %d have 'classification' data)", nrow(gwl_classified_only), nrow(gwl))
g1 <- gwl_classified_only %>%
dplyr::count(Klassifikation, Grundwasserspannung) %>%
dplyr::mutate(percental_share = 100 * n / nrow(gwl)) %>%
ggplot2::ggplot(ggplot2::aes_string(x = "Klassifikation",
y = "percental_share",
fill = "Grundwasserspannung")) +
ggplot2::geom_bar(stat = "identity") +
ggplot2::labs(title = title_text,
x = "Classification",
y = "Percental share (%)") +
ggplot2::theme_bw()
plotly::ggplotly(g1)78.67 percent of all considered 830 GW level monitoring stations containing classification data (out of 872 provided by SenWeb) indicate below normal (extrem niedrig, sehr niedrig, niedrig) GW levels. However, only 78.67 percent are indicate above normal (hoch, sehr hoch, extrem hoch) GW levels.
level_colors <- data.frame(Klassifikation = levels_ordered, classi_color = c(
"darkred", "red", "orange", "green", "lightblue", "blue", "darkblue", "grey"
))
gwl_classified_only_with_coords <- gwl_classified_only %>%
dplyr::mutate(
Messstellennummer = as.character(Messstellennummer),
) %>%
dplyr::left_join(
stations_gwl_master %>%
dplyr::select("Nummer", "Rechtswert_UTM_33_N", "Hochwert_UTM_33_N") %>%
dplyr::rename(Messstellennummer = "Nummer"),
by = "Messstellennummer"
) %>%
dplyr::left_join(
level_colors,
by = "Klassifikation"
) %>%
sf::st_as_sf(
coords = c("Rechtswert_UTM_33_N", "Hochwert_UTM_33_N"),
crs = 25833
) %>%
sf::st_transform(crs = 4326)
# Create a vector of labels for each row in gwl_classified_only_with_coords
labs <- wasserportal::columns_to_labels(
data = gwl_classified_only_with_coords,
columns = c(
"Messstellennummer",
"Grundwasserspannung",
"Klassifikation",
"Datum"
),
fmt = "<p>%s: %s</p>",
sep = ""
)
# Print Map
gwlmap <- gwl_classified_only_with_coords %>%
leaflet::leaflet() %>%
leaflet::addTiles() %>%
leaflet::addProviderTiles(leaflet::providers$CartoDB.Positron) %>%
leaflet::addCircles(
color = ~classi_color,
label = lapply(labs, htmltools::HTML)
) %>%
leaflet::addLegend(
position = "topright",
colors = level_colors$classi_color,
labels = level_colors$Klassifikation,
title = sprintf(
"Classification (latest data: %s)",
max(gwl_classified_only_with_coords$Datum)
)
)
htmlwidgets::saveWidget(
gwlmap,
"./map_gwl-trend.html",
title = "GW level trend"
)
gwlmapGW level trend plot is also available on a full html page here: https://kwb-r.github.io/wasserportal/map_gwl-trend.html
for total period available.
station_gwl <- stations$overview_list$groundwater.level[1,]
ncols <- 2:ncol(station_gwl)
gw_level <- wasserportal::read_wasserportal_raw_gw(
station = station_gwl$Messstellennummer,
stype = "gwl") %>%
dplyr::mutate(Label = sprintf("%s (%s)", Parameter, Einheit))
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
head(gw_level)
#> # A tibble: 6 × 6
#> Messstellennummer Datum Parameter Einheit Messwert Label
#> <int> <date> <chr> <chr> <dbl> <chr>
#> 1 1 1953-11-01 GW-Stand m ü. NHN 34.8 GW-Stand (m ü. NHN)
#> 2 1 1953-11-15 GW-Stand m ü. NHN 34.8 GW-Stand (m ü. NHN)
#> 3 1 1953-12-01 GW-Stand m ü. NHN 34.7 GW-Stand (m ü. NHN)
#> 4 1 1953-12-15 GW-Stand m ü. NHN 34.7 GW-Stand (m ü. NHN)
#> 5 1 1954-01-01 GW-Stand m ü. NHN 34.7 GW-Stand (m ü. NHN)
#> 6 1 1954-01-15 GW-Stand m ü. NHN 34.7 GW-Stand (m ü. NHN)
g <- gw_level %>%
ggplot2::ggplot(ggplot2::aes_string(x = "Datum", y = "Messwert", col = "Label")) +
ggplot2::geom_line() +
ggplot2::geom_point() +
ggplot2::theme_bw()
title_subtitle <- paste0(paste0(names(station_gwl)[1], ": ",
station_gwl[1],
collapse =", "),
"<br>",
"<sup>",
paste0(names(station_gwl)[ncols], ": ",
station_gwl[ncols],
collapse =", "),
"</sup>")
plotly::ggplotly(g) %>%
plotly::layout(title = list(text = title_subtitle))
gw_level_multi <- data.table::rbindlist(
lapply(stations$overview_list$groundwater.level$Messstellennummer[1:5],
function(id) {
wasserportal::read_wasserportal_raw_gw(
station = id, stype = "gwl")
}))
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
jsonlite::write_json(gw_level_multi,
path = "stations_gwl_data.json",
pretty = TRUE)
# Plot 10 GW level
selected_stations <- stations$overview_list$groundwater.level$Messstellennummer[1:10]
g <- gw_level_multi %>%
dplyr::filter(Messstellennummer %in% selected_stations) %>%
dplyr::mutate(Messstellennummer = as.character(Messstellennummer)) %>%
ggplot2::ggplot(ggplot2::aes_string(x = "Datum",
y = "Messwert",
col = "Messstellennummer")) +
ggplot2::labs(title = "GW level (m above NN)") +
ggplot2::geom_line() +
ggplot2::geom_point() +
ggplot2::theme_bw()
plotly::ggplotly(g)The data of all GW level stations is also available in JSON format here: https://kwb-r.github.io/wasserportal/stations_gwl_data.json
Overview data of GW level stations can be requested as shown below:
stations_gwq <- wasserportal::get_wasserportal_stations_table(
type = overview_options$groundwater$quality
)
DT::datatable(stations_gwq, filter = "top")Master data of GW quality stations can be requested as shown below:
stations_gwq_master <- wasserportal::get_wasserportal_masters_data(
station_ids = stations_gwq$Messstellennummer
)
#> Importing 203 station metadata from Wasserportal Berlin ... ok. (1.99s)
jsonlite::write_json(stations_gwq_master,
path = "stations_gwq_master.json",
pretty = TRUE)The master data of GW quality stations is also available in JSON format here: https://kwb-r.github.io/wasserportal/stations_gwq_master.json
station_gwq <- stations$overview_list$groundwater.quality[1,]
ncols <- 2:ncol(station_gwq)
gw_quality <- wasserportal::read_wasserportal_raw_gw(
station = station_gwq$Messstellennummer,
stype = "gwq")
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
head(gw_quality)
#> # A tibble: 6 × 5
#> Messstellennummer Datum Parameter Einheit Messwert
#> <int> <date> <chr> <chr> <dbl>
#> 1 3 2020-07-01 Temperatur (Luft) grd Celsius 19
#> 2 3 2020-07-01 pH-Wert (Feld) ohne Einheit 7.1
#> 3 3 2020-07-01 Temperatur (Wasser) grd C 12.2
#> 4 3 2020-07-01 Leitfähigkeit 25°C vor Ort µS/cm 939
#> 5 3 2020-07-01 Wasserst.(ROK) vor m 4.91
#> 6 3 2020-07-01 Wasserst.(ROK) nach m 5
unique(gw_quality$Parameter)
#> [1] "Temperatur (Luft)" "pH-Wert (Feld)"
#> [3] "Temperatur (Wasser)" "Leitfähigkeit 25°C vor Ort"
#> [5] "Wasserst.(ROK) vor" "Wasserst.(ROK) nach"
#> [7] "Entnahmeteufe (ROK)" "Förderrate"
#> [9] "Redox Pumpbeginn" "O2-Gehalt Pumpbeg."
#> [11] "Redox Pumpende" "pH Pumpende"
#> [13] "O2-Gehalt Pumpende" "Chlorid"
#> [15] "Fluorid" "Hydrogenkarbonat"
#> [17] "Nitrit (N)" "Nitrat (N)"
#> [19] "Orhto-Phosphat (P)" "Sulfat"
#> [21] "Cyanide (ges.)" "Bromid"
#> [23] "Nitrit" "Nitrat"
#> [25] "Ortho-Phosphat" "Ammonium (N)"
#> [27] "Eisen-2" "Eisen (ges.)"
#> [29] "Kalium" "Kalzium"
#> [31] "Magnesium" "Natrium"
#> [33] "Mangan" "Ammonium"
#> [35] "Leitfähigkeit /Lab. bei 25°C" "UV-Adsorption (254)"
#> [37] "CSV (KMNO4)" "Basenkap. bis 8.2"
#> [39] "Säure-Kap. bis 4.3" "Kohlenstoff (organ.)"
#> [41] "pH-Wert /Lab." "Gesamthärte"
#> [43] "Karbonathärte" "AOX"
#> [45] "Phenolindex (ges.)" "Arsen"
#> [47] "Barium" "Blei"
#> [49] "Bor" "Cadmium"
#> [51] "Chrom" "Kupfer"
#> [53] "Aluminium-gelöst" "Molybdän"
#> [55] "Nickel" "Quecksilber"
#> [57] "Selen" "Zink"
#> [59] "Vanadium" "Thallium"
#> [61] "Uran" "Summe Na+Cl"
#> [63] "Ionenbilanz (Labor)"
g <- gw_quality %>%
dplyr::filter(Parameter == "Sulfat") %>%
ggplot2::ggplot(ggplot2::aes_string(x = "Datum", y = "Messwert", col = "Parameter")) +
ggplot2::geom_line() +
ggplot2::geom_point() +
ggplot2::theme_bw()
title_subtitle <- paste0(paste0(names(station_gwq)[1], ": ",
station_gwq[1],
collapse =", "),
"<br>",
"<sup>",
paste0(names(station_gwq)[ncols], ": ",
station_gwq[ncols],
collapse =", "),
"</sup>")
plotly::ggplotly(g) %>%
plotly::layout(title = list(text = title_subtitle))
gw_quality_multi <- data.table::rbindlist(
lapply(stations$overview_list$groundwater.quality$Messstellennummer,
function(id) {
wasserportal::read_wasserportal_raw_gw(
station = id, stype = "gwq")
}))
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
#> Warning in sprintf("%s/station.php?anzeige=%sd&sstation=%s",
#> wasserportal_base_url(), : one argument not used by format '%s/station.php?
#> anzeige=%sd&sstation=%s'
jsonlite::write_json(gw_quality_multi,
path = "stations_gwq_data.json",
pretty = TRUE)
# Plot 10 GW quality
selected_stations <- stations$overview_list$groundwater.quality$Messstellennummer[1:10]
g <- gw_quality_multi %>%
dplyr::filter(Messstellennummer %in% selected_stations) %>%
dplyr::mutate(Messstellennummer = as.character(Messstellennummer)) %>%
dplyr::filter(Parameter == "Sulfat") %>%
ggplot2::ggplot(ggplot2::aes_string(x = "Datum",
y = "Messwert",
col = "Messstellennummer")) +
ggplot2::labs(title = "GW quality (Sulfat)") +
ggplot2::geom_line() +
ggplot2::geom_point() +
ggplot2::theme_bw()
plotly::ggplotly(g)The data of all GW quality stations is also available in JSON format here: https://kwb-r.github.io/wasserportal/stations_gwq_data.json